package com.syh.jn.scm.infrastructure.repository.model.base.goods;


import com.syh.core.ddd.infrastructure.repository.model.SuperBusinessModel;
import lombok.*;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;

/**
 * 商品申请
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Entity
@Table(name = "T_BASE_UPSTREAM_NEW_GOODS_REQUEST")
@EqualsAndHashCode(callSuper = true)
public class NewGoodsRequestModel extends SuperBusinessModel {
  /**
   * 申请编号
   */
  @Column(name = "CODE", columnDefinition = "varchar(50) COMMENT '申请编号'")
  private String code;
  /**
   * 商品名称
   */
  @Column(name = "GOODS_NAME", columnDefinition = "varchar(100) COMMENT '商品名称'")
  private String goodsName;
  /**
   * 联系人
   */
  @Column(name = "CONTACTS", columnDefinition = "varchar(50) COMMENT '联系人'")
  private String contacts;
  /**
   * 联系人电话
   */
  @Column(name = "MOBILE", columnDefinition = "varchar(50) COMMENT '联系人电话'", length = 50)
  private String mobile;
  /**
   * 商品品牌id
   */
  @Column(name = "GOODS_BRAND_ID", columnDefinition = "bigint COMMENT '商品品牌id'")
  private Long goodsBrandId;
  /**
   * 商品描述
   */
  @Column(name = "GOODS_DESCRIPTION", columnDefinition = "varchar(200) COMMENT '商品描述'")
  private String goodsDescription;
  /**
   * 图片url,保存格式json字符串["www.test.com","www.demo.com"]
   */
  @Column(name = "IMG_URL", columnDefinition = "varchar(1000) COMMENT ' 图片URL'")
  private String imgUrl;
  /**
   * 审核: -1不通过,0未审核,1审核通过
   */
  @Column(name = "AUDIT_STATUS", columnDefinition = "smallint COMMENT '审核: -1不通过,0未审核,1审核通过'")
  private Short auditStatus;
  /**
   * 关联商品id
   */
  @Column(name = "ASSOCIATED_GOODS_ID", columnDefinition = "bigint COMMENT '关联商品id'")
  private Long associatedGoodsId;
  /**
   * 关联商品名称
   */
  @Column(name = "ASSOCIATED_GOODS_NAME", columnDefinition = "varchar(50) COMMENT '关联商品名称'")
  private String associatedGoodsName;
  /**
   * 提交商品申请的上游供应商id
   */
  @Column(name = "UP_STREAM_SUPPLIER_ID", columnDefinition = "bigint COMMENT '提交商品申请的上游供应商id'")
  private Long upStreamSupplierId;
  /**
   * 提交商品申请的上游供应商姓名
   */
  @Column(name = "UP_STREAM_SUPPLIER_NAME", columnDefinition = "varchar(50) COMMENT '提交商品申请的上游供应商姓名'")
  private String upStreamSupplierName;
  /**
   * 审核提交给哪个服务商ID
   */
  @Column(name = "SUP_ID", columnDefinition = "bigint COMMENT '审核提交给哪个服务商ID'")
  private Long supId;
  /**
   * 审核未通过描述
   */
  @Column(name = "AUDIT_DESCRIPTION", columnDefinition = "varchar(200) COMMENT '审核未通过描述'")
  private String auditDescription;
  /**
   * 审核操作人id
   */
  @Column(name = "OPERATOR_ID", columnDefinition = "bigint COMMENT '审核操作人id'")
  private Long operatorId;
  /**
   * 创建日期
   */
  @Column(name = "CREATE_TIME_STAMP", columnDefinition = "bigint COMMENT '创建日期'")
  private Long createTimeStamp;
  /**
   * 最后修改日期
   */
  @Column(name = "LAST_UPDATE_TIME_STAMP", columnDefinition = "bigint COMMENT '最后修改日期'")
  private Long lastUpdateTimeStamp;
}
